package com.atguigu.yygh.commom.exception;

import com.atguigu.yygh.commom.result.Result;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * @author mengWu
 * @Date 2021年05月11日 10:36
 * 统一异常处理
 */
@ControllerAdvice

public class GlobalExceptionHandler {
    /**
     *
     * @author mengWu
     * @date 2021/5/11 10:38
     * @param e
     * @return com.atguigu.yygh.commom.result.Result
     * 全局异常处理
     * 如果程序执行出现异常，那么这个方法就会执行
     *
     */
    @ExceptionHandler(Exception.class)
    @ResponseBody   //输出全局异常处理
    public Result error(Exception e){
        e.printStackTrace();
        return Result.fail();

    }
    /**
     *
     * @author mengWu
     * @date 2021/5/11 10:47
     * @param e
     * @return com.atguigu.yygh.commom.result.Result
     * 自定义异常处理
     */
    @ExceptionHandler(YyghException.class)
    @ResponseBody
    public Result error(YyghException e){
        e.printStackTrace();
        return Result.fail();
    }
}
